package com.ming.test.page.ArraySort;

import java.util.Arrays;

public class Demo1 {
//二分查找
    public int getIndexOfArray(int num){
        int[] a = {1,23,45,66,76,100,666,777};

        int startIndex = 0;
        int endIndex = a.length;
        int middleIndex = (startIndex+endIndex)/2;

        while (startIndex<=endIndex){
            if(num == a[middleIndex]){
                return middleIndex;
            }else if(num>a[middleIndex]){
                startIndex = middleIndex;
                middleIndex = (startIndex+endIndex)/2;
            }else if(num<a[middleIndex]){
                endIndex = middleIndex;
                middleIndex = (startIndex+endIndex)/2;
            }
        }


        return -1;
    }

    public static void main(String[] args){

//        Demo1 demo1 = new Demo1();
//        int index = demo1.getIndexOfArray(777);
//        System.out.println("索引"+index);
//        int[] a = {1,34,0,13,34,6456,12};

//        冒泡排序
//        for (int i = 0; i < a.length-1; i++) {
//            for (int j = 0; j < a.length-1-i; j++) {
//                if(a[j]>a[j+1]){
//                    int t = a[j];
//                    a[j] = a[j+1];
//                    a[j+1] =t;
//                }
//            }
//        }
//        System.out.println(Arrays.toString(a));

//        选择排序
//        int [] b = {12,2,55,6,1,53,44,72,43,54};
//
//        for (int i = 0; i < b.length-1; i++) {
//            for (int j = i+1; j < b.length; j++) {
//                if(b[i]>b[j]){
//                    int t = b[i];
//                    b[i] = b[j];
//                    b[j]=t;
//                }
//            }
//        }

//        插入排序
        int [] b = {12,2,55,6,1,53,44,72,43,54};

        for (int i = 1; i < b.length; i++) {
            int j = i;
            while (j>0&&b[j]<b[j-1]){
                int t = b[j];
                b[j] = b[j-1];
                b[j-1] = t;
                j--;
            }
        }
//        或者
        for (int i = 1; i <b.length ; i++) {
            for (int j = i; j>0; j--) {
                if(b[j]<b[j-1]){
                    int t = b[j];
                    b[j] = b[j-1];
                    b[j-1] = t;
                }
            }
        }

        System.out.println(Arrays.toString(b));



    }

}